/* Synthwave代码块主题 */
.hljs.synthwave {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  background: #2b213a;
  color: #f92aad;
  text-shadow: 0 0 2px #100c0f, 0 0 5px #dc078e33, 0 0 10px #fff3;
}

.hljs.synthwave .hljs-comment,
.hljs.synthwave .hljs-quote {
  color: #9e8bbd;
  font-style: italic;
}

.hljs.synthwave .hljs-keyword,
.hljs.synthwave .hljs-selector-tag,
.hljs.synthwave .hljs-literal,
.hljs.synthwave .hljs-type,
.hljs.synthwave .hljs-addition {
  color: #72f1b8;
  text-shadow: 0 0 2px #100c0f, 0 0 10px #257c5575, 0 0 35px #21272475;
}

.hljs.synthwave .hljs-number,
.hljs.synthwave .hljs-selector-attr,
.hljs.synthwave .hljs-selector-pseudo {
  color: #fe8019;
}

.hljs.synthwave .hljs-string,
.hljs.synthwave .hljs-doctag,
.hljs.synthwave .hljs-regexp {
  color: #fdfdfd;
  text-shadow: 0 0 2px #001716, 0 0 3px #03edf975, 0 0 5px #03edf975, 0 0 8px #03edf975;
}

.hljs.synthwave .hljs-title,
.hljs.synthwave .hljs-section,
.hljs.synthwave .hljs-name,
.hljs.synthwave .hljs-selector-id,
.hljs.synthwave .hljs-selector-class {
  color: #f4eee4;
  text-shadow: 0 0 2px #393a33, 0 0 8px #f39f0575, 0 0 2px #f39f0575;
}

.hljs.synthwave .hljs-attribute,
.hljs.synthwave .hljs-attr,
.hljs.synthwave .hljs-subst,
.hljs.synthwave .hljs-meta,
.hljs.synthwave .hljs-selector-attr,
.hljs.synthwave .hljs-selector-pseudo,
.hljs.synthwave .hljs-link {
  color: #f92aad;
}

.hljs.synthwave .hljs-variable,
.hljs.synthwave .hljs-template-variable {
  color: #fe8019;
}

.hljs.synthwave .hljs-built_in,
.hljs.synthwave .hljs-deletion {
  color: #ff8e8e;
}

.hljs.synthwave .hljs-formula {
  color: #f92aad;
}

.hljs.synthwave .hljs-emphasis {
  font-style: italic;
}

.hljs.synthwave .hljs-strong {
  font-weight: bold;
}

/* 特殊效果 */
.hljs.synthwave::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: linear-gradient(to bottom, transparent, #2b213a);
  pointer-events: none;
  z-index: -1;
}

.hljs.synthwave::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: repeating-linear-gradient(
    0deg,
    rgba(0, 0, 0, 0.15),
    rgba(0, 0, 0, 0.15) 1px,
    transparent 1px,
    transparent 2px
  );
  pointer-events: none;
  z-index: -1;
} 